.\" Copyright (c) 2013 Edward Tomasz Napierala
.\" Copyright (c) 2015-2017 Alexander Motin <mav@FreeBSD.org>
.\" Copyright (c) 2017 Enji Cooper <ngie@FreeBSD.org>
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.Dd May 28, 2017
.Dt CFISCSI 4
.Os
.Sh NAME
.Nm cfiscsi
.Nd CAM Target Layer iSCSI target frontend
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
.Cd "device cfiscsi"
.Cd "device ctl"
.Cd "device iscsi"
.Ed
.Pp
Alternatively, to load the driver as a
module at boot time, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
cfiscsi_load="YES"
.Ed
.Sh DESCRIPTION
The
.Nm
subsystem provides the kernel component of an iSCSI target.
The target is the iSCSI server, providing LUNs backed by local files
and volumes to remote initiators.
The userspace component is provided by
.Xr ctld 8 .
.Nm
is implemented as a
.Xr ctl 4
frontend and uses infrastructure provided by
.Xr iscsi 4 .
.Sh SYSCTL VARIABLES
The following variables are available as both
.Xr sysctl 8
variables and
.Xr loader 8
tunables:
.Bl -tag -width indent
.It Va kern.cam.ctl.iscsi.debug
Verbosity level for log messages from the kernel part of iSCSI target.
Set to 0 to disable logging or 1 to warn about potential problems.
Larger values enable debugging output.
Defaults to 1.
.It Va kern.cam.ctl.iscsi.maxtags
The number of outstanding commands to advertise to each iSCSI initiator.
Current implementation is not very accurate, so do not set this below 2.
Defaults to 256.
.It Va kern.cam.ctl.iscsi.ping_timeout
The number of seconds to wait for the iSCSI initiator to respond to a NOP-In
PDU.
In the event that there is no response within that time the session gets
forcibly terminated.
Set to 0 to disable sending NOP-In PDUs.
Defaults to 5.
.El
.Sh SEE ALSO
.Xr ctl 4 ,
.Xr iscsi 4 ,
.Xr ctl.conf 5 ,
.Xr ctld 8
.Sh HISTORY
The
.Nm
subsystem first appeared in
.Fx 10.0
as part of the
.Xr ctl 4
driver.
It was split off of
.Xr ctl 4
in
.Fx 12.0 .
.Sh AUTHORS
.An -nosplit
The
.Nm
subsystem was developed by
.An Edward Tomasz Napierala Aq Mt trasz@FreeBSD.org
under sponsorship from the FreeBSD Foundation.
This manual page was written by
.An Enji Cooper Aq Mt ngie@FreeBSD.org .
